[iOS 8/Xcode 6] さらにToday Extension のメモリ容量制限について調べてみた
再び調べてみる
[iOS 8/Xcode 6] Today Extension のメモリ容量制限について調べてみた
に引き続き、Today Extension でのメモリ容量制限について、画像を用いて調べてみます。
前回は、Today Extension 上で、ピクセル数の違う複数の画像を切り替えながら、Today Extension が正常に動くかを調べました。
今回は、前回調べきれなかった場合のメモリ確保量と挙動を調べてみます。
同じファイルサイズ・異なるピクセル数
1000x1000pixel の画像と、3000x3000pixelの画像を用意しました。ファイルサイズは同じ153KBです。
メモリ確保量が、リソースファイル自体のファイルサイズで変わるのか、純粋にピクセル数で変わるのかがこれで見えてくるはずです。
iPhone5sを使用します。
1000x1000pixel
画像表示前と表示後の差は5,902,336バイト。
なるほど、こんなかんじです。
3000x3000pixel
おっと、表示できなくなりました。
メモリを確保しきれなくなったことが予想できます。
シミュレータで試してみます。
1000x1000pixel(シミュレータ)
画像表示前と表示後の差は5,820,416バイト。
実機とあまり変わらないですね。
3000x3000pixel(シミュレータ)
画像表示前と表示後の差は39,727,104バイト。
おっとこれは。なるほどです。
圧縮画像ファイルをメモリ上に展開しているわけですから、当然の結果ですね。